In a virtual desktop scenario, there is at least one server and at least one client machine, and a user logs in to a user virtual machine on the server using a virtual desktop client installed on the client machine. A graphics processing program that depends on a graphics processing unit (GPU) for a graphics operation, such as AutoCAD, 3Ds Max, Pro/E, and a three-dimensional (3D) game, may be installed on the virtual machine. When the program runs on the virtual machine, a GPU virtualization technology enables multiple virtual machines to share one physical graphics card to perform a graphics operation, so as to improve utilization efficiency of a hardware resource. Graphics drivers (such as a user mode 3D driver and a kernel mode Windows Display Driver Model (WDDM)) on the user virtual machine acquire graphics instructions (such as a 3D graphics instruction and a two-dimensional (2D) graphics device interface (GDI) instruction) of various software and operating systems, and send the foregoing graphics instructions and data that is used for graphics rendering to a rendering server (Render Server), so that the rendering server invokes a physical GPU to perform instruction rendering and generate a desktop image of the user virtual machine, and sends the generated desktop image of the user virtual machine to the client for display.
In the foregoing process, a large quantity of graphics instructions and data are communicated between the user virtual machine and the rendering server; as a result, a large quantity of communication overheads are generated between the user virtual machine and the rendering server, which reduces efficiency of sharing in the GPU virtualization technology and deteriorates user experience.